iT邦幫忙

dynamic programming相關文章
共有 63 則文章
鐵人賽 JavaScript DAY 22

技術 Day 21|行李只能帶 20 公斤,你要放什麼?

上一篇,我們透過找零錢問題看到,Greedy 每一步都選擇眼前看起來最好的選項,最後卻不一定能得到整體最佳解。我們也利用動態規劃,從較小金額的答案逐步推導,找出...

鐵人賽 Software Development DAY 29

技術 Day 29 - 動態規劃(Dynamic programming)

不知不覺就到Day 29了! 老實說我還沒想到明天要寫什麼主題那麼今天一樣延續這幾天演算法的介紹前面我們學過遞迴(Recursion)、分治法(Divide a...

鐵人賽 JavaScript DAY 21

技術 Day 20|每一步都選最好,為什麼最後可能不是最好?

上一篇,我們用找零錢的問題認識了 Greedy。假設要找 67 元,可以使用 50、10、5、1 的面額。當我們每一步都選擇: 不超過剩餘金額的最大面額 會...

技術 Day 13 字串題型(五) 編輯距離

🟨編輯距離 本題取自 Leetcode 72. Edit Distance 題目 Given two strings word1 and word2, retu...

技術 Day 12 字串題型(四) 最長的回文子序列(LPS)

🟨最長回文字子序列(解法1) 題目 本題取自 Leetcode 516. Longest Palindromic Subsequence Given a str...

技術 Day 11 字串題型(三) 最長的共同子序列(LCS)

🟨最長的共同子序列 本題取自 Leetcode 1143. Longest Common Subsequence 題目 Given two strings te...

技術 Day 10 字串題型(二) 拆字

今天我們繼續看一題字串類型的題目:拆字。 🟨拆字 本題取自 Leetcode 139. Word Break 題目 Given a string s and a...

技術 Day 09 字串題型(一) 最長的回文子字串(LPS)

今天我們來看一個字串類的經典題型:最長回文子字串(LPS) 題目:🟨最長回文子字串(LPS) 本題取自 Leetcode 5. Longest Palindro...

技術 Day 08 矩陣題型(下)

🟨最大正方形 本題取自 Leetcode 221. Maximal Square 題目 Given an m x n binary matrix filled...

技術 Day 07 矩陣題型(中)

🟨三角形 本題取自 Leetcode 120. Triangle 題目 Given a triangle array, return the minimum p...

技術 Day 06 矩陣題型(上)

前面幾天我們做了幾道題,熟悉了一維數列形式的1-D DP題型,在這類問題中狀態是單一的(例如爬樓梯問題的第i階、扒手問題的第i間房...等等)。 接下來,讓我們...

技術 Day 05 費氏數列題型(下)

🟨扒手I 回顧 在昨天的文章中留下了一個伏筆:能否換一個思路進行扒手問題的分治法,設計狀態,並且得到對應的轉移式? 題目是 Leetcode 198. Hous...

技術 Day 04 費氏數列題型(中)

🟨扒手I 本題取自 Leetcode 198. House Robber 題目 You are a professional robber planning t...

技術 Day 02 動態規劃簡介

何謂動態規劃 實際上,與其說動態規劃是一個演算法,不如說其描述的是「一群演算法」背後共通的拆解邏輯更為恰當。動態規劃的核心概念分為兩個部分: 將複雜的母問題...

技術 Day8 Dynamic Programming 題目3:139. Word Break

原文題目 Given a string s and a dictionary of strings wordDict, return true if s can...

技術 Day7 Dynamic Programming 題目2:198. House Robber

原文題目 You are a professional robber planning to rob houses along a street. Each h...

技術 Day6 Dynamic Programming 題目1 :70. Climbing Stairs

原文題目 You are climbing a staircase. It takes n steps to reach the top. Each time...

技術 Day5 演算法介紹:動態規劃(Dynamic Programming)

動態規劃(Dynamic Programming) 動態規劃是一種有效率計算由子問題堆疊而成的演算法,是一種常見的解題方式。透過將問題分解成許多可以利用簡單方法...

技術 [leetcode - Bliend-150 ] 746. Min Cost Climbing Stairs (Easy)

You are given an integer array cost where cost[i] is the cost of ith step on a s...

技術 [一天至少一題直到ICPC開賽003]解題: Ice and Fire(12/12)

Ice and Fire 題目連結 感想: 學再多的技巧也怕題目不懂(有在code裡講一下題目意思) 解題 用dp從左至右將答案一個一個存入在一次輸出 幾個...

鐵人賽 Software Development DAY 29

技術 【動態規劃】Dynamic Programming (2)

本文同步更新於個人網站中,有更好的排版和程式碼區塊 highlighting 支援。 接續昨天的文章,今天我們繼續來練習動態規劃的題目,熟悉一下動態規劃的解...

鐵人賽 自我挑戰組 DAY 29

技術 Day29 - 動態規劃經典題-背包問題

問題 這邊一樣以 AtCoder Educational DP Contest 的類題來舉例,這題是 D - Knapsack 1,題意大概是有一個背包,裡面只...

鐵人賽 自我挑戰組 DAY 28

技術 Day28 - 動態規劃例題-不定型

問題 這邊一樣以 AtCoder Educational DP Contest 的類題來舉例,這題是 C - Vacation,題意簡單來說就是每天都可以進行一...

鐵人賽 Software Development DAY 28

技術 【動態規劃】Dynamic Programming (1)

本文同步更新於個人網站中,有更好的排版和程式碼區塊 highlighting 支援。 動態規劃(Dynamic Programming, DP)一般在面試時...

鐵人賽 自我挑戰組 DAY 27

技術 Day27 - 動態規劃經典題-爬樓梯問題(再改)

問題 這邊一樣以 AtCoder Educational DP Contest 的類題來舉例,這題是 B - Frog 2,簡單來說一隻青蛙可以一次走 ~...

鐵人賽 自我挑戰組 DAY 26

技術 Day26 - 動態規劃經典題-爬樓梯問題(改)

問題 這邊以 AtCoder Educational DP Contest 的類題來舉例,這題是 A - Frog 1,簡單來說一隻青蛙可以一次走兩步或是走一步...

鐵人賽 Mobile Development DAY 27

技術 Day 27: 導讀 LeetCode 演算法 - 動態規劃 Dynamic Programming (Swift)

終於來到最後一篇介紹 LeetCode 演算法的導讀文了,先聲明其實還有一些主題沒有介紹,在安排三十天挑戰計畫裡面,因為整個主題不是全部 LeetCode,是環...

鐵人賽 自我挑戰組 DAY 23

技術 Day23 - 動態規劃(Dynamic Programming)

概念 動態規劃,簡稱 DP,是一種演算法的設計概念。其核心思想是通過解決許多相似性質的小問題,來計算我們所關心的大問題的答案。通常,這些小問題之間存在著遞迴關係...

鐵人賽 自我挑戰組 DAY 10
Leetcode 各主題解題攻略 系列 第 10

技術 2D動態規劃攻略 part3

Hi大家好,今天要繼續介紹2D動態規劃裡面很經典的問題,你會發現有很多動態規劃的問題都有相似的pattern。 Longest Common Subseque...

鐵人賽 自我挑戰組 DAY 9

技術 2D動態規劃攻略 part2

Hi,昨天分享了一些光看題目就知道很適合利用2D動態規劃去解決的問題。今天要繼續來分享屬於2D動態規劃的經典問題,和相關應用。 0/1背包問題 敘述: 有一...